package com.firebird.app.fekpsl.api

import com.firebird.app.fekpsl.bean.BaseListResponseBody
import com.firebird.app.fekpsl.bean.Follow
import com.firebird.app.fekpsl.bean.FriendMessage
import com.firebird.app.fekpsl.bean.HttpResult
import com.firebird.app.fekpsl.bean.Messager
import io.reactivex.Observable
import retrofit2.http.*

/**
 * Created by firebird on 2018/4/21.
 */
interface FriendApiService {
    //friend
    @GET("messager/list/{pageNo}/{userUuid}/json")
    fun getMessagerList(@Path("pageNo") pageNo: Int,
                        @Path("userUuid") userUuid: String): Observable<HttpResult<BaseListResponseBody<Messager>>>

    @GET("friend_message/list/{pageNo}/{sendUserUuid}/{receiveUserUuid}/json")
    fun getFriendMessageList(@Path("pageNo") pageNo: Int,
                             @Path("sendUserUuid") sendUserUuid: String,
                             @Path("receiveUserUuid") receiveUserUuid:String): Observable<HttpResult<BaseListResponseBody<FriendMessage>>>

    @GET("my_follow/list/{pageNo}/{userUuid}/json")
    fun getFollowList(@Path("pageNo") pageNo: Int,
                      @Path("userUuid") userUuid: String): Observable<HttpResult<BaseListResponseBody<Follow>>>

    @GET("my_follow/list/{pageNo}/{userUuid}/json")
    fun getMyFollowList(@Path("pageNo") pageNo: Int,
                        @Path("userUuid") userUuid: String): Observable<HttpResult<BaseListResponseBody<Follow>>>

    @GET("follow_me/list/{pageNo}/{userUuid}/json")
    fun getFollowMeList(@Path("pageNo") pageNo: Int,
                        @Path("userUuid") userUuid: String): Observable<HttpResult<BaseListResponseBody<Follow>>>

    @GET("block_people/list/{pageNo}/{userUuid}/json")
    fun getBlockPeopleList(@Path("pageNo") pageNo: Int,
                           @Path("userUuid") userUuid: String): Observable<HttpResult<BaseListResponseBody<Follow>>>

}